• File: mainLog_maintain.php
  • Full Path: C:/htdocs/reeft_gps_test/REEFTintegrationLog/mainLog_maintain.php
  • Date Modified: 06/03/2025 2:52 PM
  • File size: 80.63 KB
  • MIME-type: text/x-php
  • Charset: utf-8
<?php
//======================================================================================
//
// Function: Maintain mainLog
//
// Programmer: JKJ
// Date      : 2025-04-15
//
// https://datatables.net/plug-ins/sorting/natural
// <script src="https://cdn.datatables.net/plug-ins/2.2.1/sorting/natural.min.js"></script>
//
// Copyright Reeft A/S (c) - 2025
//======================================================================================

//======================================================================================
// Get input
//======================================================================================

	if (isset($_REQUEST["timeStamp"])) {
		$timeStamp = $_REQUEST["timeStamp"];
	} else {
		$timeStamp = '';
	}


//======================================================================================
// Set defaults
//======================================================================================
    $fromdate = date("Y-m-d",strtotime("-1 month"));
    $fromtime = date("H:i");
    $todate = date("Y-m-d");
    $totime = date("H:i",strtotime("+1 hour"));

//======================================================================================
// Make line uppercase
//======================================================================================


//======================================================================================
// General config
//======================================================================================
	include "config/config.php";

//======================================================================================
// Check if user is logged in?
//======================================================================================
	include "login_check.php";

//======================================================================================
// Get session variables
//======================================================================================

	include "include/getsession.php";

	// include "include/uuid_create.php";
	// include "include/generate_password_md5.php";

//======================================================================================
// Set language
//======================================================================================

	include "include/set_language.php";

//======================================================================================
// Set defaults
//======================================================================================

	// $pk_pk_key  = $_SESSION['session_dft_pk_pk_key'];
	// $pk_keyCode = $_SESSION['session_dft_pk_keycode'];
	// $pk_keyName = $_SESSION['session_dft_pk_keyname'];

//======================================================================================
?>
<!DOCTYPE html>
<html lang="en">
<head>
	<title><?php echo $reeft_text0001 ?></title>

	<meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
	<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
	<meta name="description" content="REEFTvisual - Stoptime">
    <meta name="author" content="REEFT A/S">
    <link rel="icon" href="images/favicon/favicon.ico">

    <!-- Bootstrap / jQuery -->
    <link href="css/bootstrap4.3.1/css/bootstrap.custom.min.css" rel="stylesheet">
    <link href="css/bootstrap4.3.1/css/themes/bootstrap.custom.min.css" rel="stylesheet">

	<link href="css/bootstrap4.3.1/css/normalize.css" rel="stylesheet" type="text/css">

	<link href="css/sticky-footer.css" rel="stylesheet" type="text/css">

    <!-- Custom styles for this template -->
    <link href="css/custom.css" rel="stylesheet">
    <link href="css/style.css" rel="stylesheet">


	<script src="css/fontawesome6.5.1/js/all.min.js"></script>
	<script src="css/fontawesome6.5.1/js/sharp-light.min.js"></script>
	<script src="css/fontawesome6.5.1/js/sharp-regular.min.js"></script>
	<script src="css/fontawesome6.5.1/js/sharp-solid.min.js"></script>
	<script src="css/fontawesome6.5.1/js/sharp-thin.min.js"></script>


	<link href="css/bootstrap_animation/css/animate4/animate.css" rel="stylesheet" type="text/css">

	<!--<link href="javascript/chosen/chosen.css" rel="stylesheet" type="text/css">-->

	<link href="javascript/jquery-ui/jquery-ui.min.css" rel="stylesheet" type="text/css"/>

    <script src="javascript/jquery.js"></script>
    <script src="css/bootstrap4.3.1/js/popper.js"></script>
    <script src="css/bootstrap4.3.1/js/bootstrap.min.js"></script>

	<script src="javascript/jquery-ui/jquery-ui.min.js"></script>
    <script src="javascript/jquery.ui.touch-punch.min.js"></script>

	<link href="javascript/bgrins-spectrum/spectrum.css" rel="stylesheet" type="text/css">
	<script src="javascript/bgrins-spectrum/spectrum.js"></script>

	<script src="javascript/moment.min.js"></script>
	<script src="javascript/moment-with-locales.min.js"></script>
	<script src="javascript/moment-duration-format.min.js"></script>

	<script src="javascript/number_format/jquery.number.min.js"></script>

	<script src="javascript/jquery.scrollTo.min.js"></script>


	<!-- Data tables start -->
		<link href="javascript/datatables.3.12/datatables.min.css" rel="stylesheet">
		<script src="javascript/datatables.3.12/datatables.min.js"></script>
	<!-- Data tables end -->

	<script src="javascript/chosen/chosen.jquery.min.js" type="text/javascript"></script>

	<script src="javascript/viewer-master/dist/viewer.min.js"></script>
	<link  href="javascript/viewer-master/dist/viewer.min.css" rel="stylesheet">

	<script src="javascript/ajaxq/ajaxq.js"></script>

	<link id="scrollUpTheme" rel="stylesheet" href="javascript/scrollup-master/dist/css/themes/image.css">
	<script src="javascript/scrollup-master/dist/jquery.scrollUp.js"></script>
	<script src="javascript/shortcut.js"></script>

	<script src="javascript/filesaver.js-master/dist/FileSaver.js"></script>

	<script src="javascript/_reeft_js/set_font_awesome_icon_type.js"></script>
	<script src="javascript/_reeft_js/date_convert.js"></script>

<style>

#REEFTvisual_data_processing {
position: absolute;
top: 15% !important;
  background: #ccc;
  border: 1px solid black;
  border-radius: 3px;
  font-weight: bold;
  width: 300px;
}


.btn-custom-wide {
	height:60px;
	width:210px;
}

.text-truncate-dt {
    max-width: 450px;
	white-space: nowrap;
    overflow: hidden;
	text-overflow: ellipsis;

}


.overflow-class {
	width: 100%;
	/*height:700px;*/
	max-height: calc(100vh - 283px);
	overflow-y: scroll;
	overflow-x: scroll;
}

.overflow-class-modal-body {
	width: 99%;
	max-height: calc(100vh - 283px);
	overflow-y: scroll;
	overflow-x: hidden;
}

.text-align-center-dt {
    text-align: center;
}

.text-align-left-dt {
    text-align: left;
}

.text-align-right-dt {
    text-align: right;
}

.modal-xxl {
    max-width: 80%;
}

.modal-xl {
    max-width: 50%;
}


.border-3 {
    border-width:3px !important;
}

td .hover-img {
  position:relative;
 }
td .hover-img span {
  position:absolute; left:-9999px; top:-9999px; z-index:9999;
 }
td:hover .hover-img span {
  top: 5px;
  left:0px;
 }

.chosen-container-single {
    min-width: 100%;
}




</style>

<script language="JavaScript">

//=============================================================================
// Globals
//=============================================================================

    var thisCurrentRow;
	var thisGlobalRowData;
    var thisGlobalTableData;

	// date variables
	var input_fromdate;
	var input_fromtime;
	var input_todate;
	var input_totime;

	// Save field
	var save_dataLine = '';
	var save_timeStamp = '';

	var global_debug = 'N';
	var global_GET_POST = 'POST';

	// Add allowed Y/N
	var GLOBAL_ADD_ALLOWED = 'N';

	// Show group buttons
	var GLOBAL_SHOW_GROUP_BUTTONS = 'N';

	// Delete allowed Y/N
	var GLOBAL_DELETE_ALLOWED = 'N';

	// sortMode
	var GLOBAL_SORTMODE = 'DESC';

	var jsonDataSave = {};

	var DFT_DATE_DISPLAY_FORMAT 	=  '<?php //echo $DFT_DATE_DISPLAY_FORMAT ?>';
	var DFT_LANGUAGE 				=  '<?php //echo $DFT_LANGUAGE ?>';

	var GLOBAL_TOTALPAGESSTOPVALUE	=  10;

	// Save field
	//var save_CFGNAM = '';


	$(function () {
	  $.scrollUp({
		scrollName: 'scrollUp', // Element ID
		//topDistance: '1800', // Distance from top before showing element (px)
		//topSpeed: 300, // Speed back to top (ms)
		scrollDistance: '300', // Distance from top before showing element (px)
		scrollSpeed: 300, // Speed back to top (ms)
		animation: 'fade', // Fade, slide, none
		animationInSpeed: 200, // Animation in speed (ms)
		animationOutSpeed: 200, // Animation out speed (ms)
		scrollText: false, //'Scroll to top', // Text for element
		activeOverlay: false, // Set CSS color to display scrollUp active point, e.g '#00FFFF'
	  });
	});

//=============================================================================
// Get data
//=============================================================================
function getData( inputGetData )
{
	
	//	alert('x')

	// Reset, show all
	if ( inputGetData == '*RESET' ) {
		inputGetData = '';
		$('#input-fromdate').val('');
		$('#input-fromtime').val('');
		$('#input-todate').val('');
		$('#input-totime').val('');

		// Update input variables
		input_fromdate = $('#input-fromdate').val();
		input_fromtime = $('#input-fromtime').val();
		input_todate = $('#input-todate').val();
		input_totime = $('#input-totime').val();

		// Reset date buttons
		$('.btn-default-date-interval').removeClass('btn-success').addClass('btn-dark');


		//Clear search
		thisGlobalTableData.search( '' );

	}

	//Only initialize datatables once, else just draw it
	if ( $.fn.dataTable.isDataTable( '#REEFTvisual_data' ) ) {
		console.log('1');
		thisGlobalTableData.draw(); // fire in the hole
	}
	else {
		console.log('2');
		setDataTables();
	}

}

//=============================================================================
// Set datatables
//=============================================================================
function setDataTables()
{

	// Delete allowed?
	if ( GLOBAL_DELETE_ALLOWED == 'Y' ) {
		var show_the_delete_button = true;
	} else {
		var show_the_delete_button = false;
	}

	// Get the current date line
	input_fromdate 		= $('#input-fromdate').val();
	input_fromtime 		= $('#input-fromtime').val();
	input_todate 		= $('#input-todate').val();
	input_totime 		= $('#input-totime').val();

	input_logType 		= $('#input-logType').val();
	input_logCode 		= $('#input-logCode').val();
	input_logPgm 		= $('#input-logPgm').val();
	input_clientID 		= $('#input-clientID').val();
	input_dataLine 		= $('#input-dataLine').val();

	parmData = '';


	// Get the current date line
	input_logCode = $('#input-logCode').val();

    new $('#REEFTvisual_data').DataTable({
		"ajax": {
			"url": 'mainlog_maintain_get.php',
			"type": global_GET_POST,
			"data": function (parmData) {

				// Add custom parameters to the ajax call
				parmData.logCode	 = input_logCode;

				// From date
				parmData.fromdate = input_fromdate.trim();
				parmData.fromtime = input_fromtime;
				parmData.fromtime = input_fromtime;

				// To date
				parmData.todate = input_todate.trim();
				parmData.totime = input_totime;

				// Log type and code
				parmData.logType 	= input_logType;
				parmData.logCode 	= input_logCode;
				parmData.logPgm  	= input_logPgm;
				parmData.clientID	= input_clientID;
				parmData.dataLine	= input_dataLine;


			},
			dataSrc: function (jsonData) {  //return data

				var rpyCMPNO					= jsonData.header.rpyCMPNO;
				var rpyCMPNO_Name				= jsonData.header.rpyCMPNO_Name;
				var rpyFile_name				= jsonData.header.rpyFile_name;
				var rpyFile_description			= jsonData.header.rpyFile_description;
				var rpyTableRecordsFound		= jsonData.header.rpyTableRecordsFound;
				var recordsTotal				= jsonData.header.recordsTotal;
				var recordsTotalFormat			= jsonData.header.recordsTotalFormat;

				var returnCode 					= jsonData.header.returnCode;
				var returnMsg 					= jsonData.header.returnMsg;
				var entries_found 				= jsonData.header.entries_found;
				var response_sec 				= jsonData.header.response_sec;

					sql_where	 				= jsonData.header.sql_where	;
					sql_statement				= jsonData.header.sql	;

				// Show SQL?
				if ( $('#input-showSQLstatement').val() == 'Y' ) {
					$('#input-sql-statement').text( sql_statement );
				} else {
					$('#input-sql-statement').text('');
				}


				// Show load time
				$('#text-total-records-found').html( rpyTableRecordsFound );
				$('#text-total-records-found').html( recordsTotalFormat );
				$('#load-time-from-database').html('entries found: ' + entries_found + ' (' + response_sec + ')');


				// Set Company and file information
				if ( rpyFile_name != '' ) {
					$('#data-hub-company-information').html( '<span title="' + rpyFile_name + ' - ' + rpyFile_description + '">' + rpyCMPNO_Name + '</span>' ).css('font-size','1.3em');
				}

				// Init button line fields
				var HTMLlineButtons 		= '';
				var HTMLlineButtonsModal 	= '';
				var selectedButtonClass 	= 'btn-dark';

				//=====================================================================================
				// Create group buttons, only if wanted
				//=====================================================================================
				if ( GLOBAL_SHOW_GROUP_BUTTONS == 'Y' ) {

					$.each( jsonData.header_buttons, function( index, object ){
						var buttonLine   = object.buttonLine;
						var buttonCount	 = object.buttonCount;

						selectedButtonClass = 'btn-dark';

						var selectButtonLineID 		= 'select-button-line-id-' + buttonLine;
						var selectButtonLineIDmodal = 'select-button-line-id-modal-' + buttonLine + '_' + buttonCount;

						HTMLlineButtons 		+=	'<button type="button" onclick="setWebserviceSearch(\'' + buttonLine + '\')" style="cursor:default" id="' + selectButtonLineID + '" class="btn ' + selectedButtonClass + ' select-button-line btn-sm mr-1 mb-1">'
												+ 	buttonLine + ' (<b>' + buttonCount + '</b>)'
												+	'</button>'

						HTMLlineButtonsModal 	+=	'<button type="button" onclick="selectGroupValueModal(\'' + buttonLine + '\')" style="width:100px" id="' + selectButtonLineIDmodal + '" class="select-button-line-modal btn btn-primary btn-sm mr-1 mb-1">'
												+ 	buttonLine
												+	'</button>'

					});

					// Reset
					HTMLlineButtons 		+=	'<button type="button" onclick="setWebserviceSearch(\'' + '' + '\')" style="cursor:default" id="' + 'RESET' + '" class="btn ' + 'btn-warning' + ' select-button-line btn-sm mr-1 mb-1">'
											+ 	'<b>' + 'RESET' + '</b>'
											+	'</button>'


					$('#data-result-button-group').html(HTMLlineButtons);
					$('#data-result-button-group-modal').html(HTMLlineButtonsModal);

				}
				//=====================================================================================


				return jsonData.data;
			}
		},
		searching: false,
		processing: true,
		serverSide: true,
        responsive: true,
		fixedHeader: true,
        order: [[ 0, "asc" ],[ 1, "asc" ]],

		// Control the order on the screen
		colReorder:
		{
			//order: [0 ,1 ,2 ,3 ,4, 5, 6, 7, 8, 9]
			order: [0,1 ,2 ,3 ,4, 5, 6, 7, 8, 9]
		},


		columnDefs: [
			// Make sure the sorts toggle asc/desc and not asc/desc/no-sort
			{
				orderSequence: ['asc', 'desc'], targets: ['_all']
			},

			// // Make sure that buttons are not "hided" when responsive kicks in
			{ responsivePriority: 4, targets: 1 },
			// { responsivePriority: 2, targets: 0 },
			// { responsivePriority: 3, targets: 1 },
			// { responsivePriority: 4, targets: 2 },
			// { responsivePriority: 5, targets: 3 },
			// { responsivePriority: 6, targets: 4 },
			// { responsivePriority: 20, targets: 7 },
			// { responsivePriority: 30, targets: 6 },
			// { responsivePriority: 40, targets: 5 },
			// { responsivePriority: 50, targets: 4 },
			// { responsivePriority: 60, targets: 3 },


			  {
				  "targets": [ 8 ],
				  "visible": show_the_delete_button,
				  "searchable": false,
				  "orderable": false
			  },
			  {
				 "targets": [ 1,2,3,4,5,6,7 ],
				 "visible": true,
				 "searchable": false,
				 "orderable": false
			 },
			 {
				"targets": [ 9 ],
				"visible": false,
				"searchable": false,
				"orderable": false
			 },
			 // {
				// "targets": [ 3,15,16,17,18 ],
				// "className": "text-align-center-dt"
			// }
			{
				"targets": [ 1,5 ],
				"max-width": '120px',
				"className": "text-truncate-dt"  //class to mimic text-truncate in dt
			}

		],
		columns:
				[

					{
						// 0
						// Since we are combining multiple data fields, use null as the data source
						data: 'pk_key',
						render: function (data, type, row, meta)
						{
							// Set time text
							var myPKKEY = '<span ondblclick="copyToClipBoard(\'' + row.pk_key + '\')"  title="Double click to copy to clipboard - pk_key: ' + row.pk_key + '">' + row.pk_key + '</span>';

							return myPKKEY;
						}
					},

					{
						// 1
						// Since we are combining multiple data fields, use null as the data source
						data: 'timeStamp_local',
						render: function (data, type, row, meta)
						{
							// Set time text
							var myTimeStamp = '<span ondblclick="copyToClipBoard(\'' + row.timeStamp + '\')"  title="Double click to copy to clipboard - UTC timestamp: ' + row.timeStamp + '">' + row.timeStamp_local + '</span>';

							return myTimeStamp;
						}
					},
					{ data: "logType" }, 		// 2
					{ data: "logCode" }, 		// 3
					{ data: "logPgm" }, 		// 4
					{ data: "dataLine" }, 		// 5
					{ data: "clientID" }, 		// 6
					{
						// 7
						// Since we are combining multiple data fields, use null as the data source
						data: null,
						render: function (data, type, row, meta)
						{
							// Create edit button
							var myButton = '<button id="edt-' + row.timeStamp + '_' + row.pk_key + '" class="edit-btn btn btn-primary btn-block text-truncate xmr-1"><?php echo $reeft_button_show_details ?></button>';
							return myButton;
						}
					},
					{
						// 8
						// Since we are combining multiple data fields, use null as the data source
						data: null,
						render: function (data, type, row, meta)
						{
							// Create delete button
							var myButton = '<button id="dlt-' + '-' + row.timeStamp + '_' + row.pk_key + '" class="delete-btn btn btn-danger text-truncate btn-block xmr-1"><?php echo $reeft_button_delete ?></button>';
							return myButton;
						}
					},
					{ data: "timeStamp" }, 		// 8

                ],
		pageLength: 25,
		lengthChange: true,
		layout: {
			top1Start: {
				pageLength: {
						menu: [10, 25, 50, 100 ]
				}
			},
			top1End: [{
				search: {
					placeholder: '<?php echo $reeft_datatable_Search_text ?>',
				}

			}],
			topStart: {
				info:{
					 }
			},
			topEnd: {
				paging: {
					buttons: 8,
					firstLast: true,
					boundaryNumbers: true,
				}
			},
			bottomStart: {
				buttons: [
					{
						extend: 'copyHtml5',
						text: '<img src="images/copy.png" height="25"> Copy to Clipboard',
						titleAttr: 'Copy',
						title: 'REEFT Integration - Webservice Data Export - Copy to clipboard',
						exportOptions: {
							// Fields to export (https://datatables.net/pk_key/button/csv#Examples)
							columns: [0,1,2,3,4,5,6]
						}

					},
					{
						extend: 'excelHtml5',
						text: '<img src="images/microsoft_excel_logo.png" height="25"> Excel',
						titleAttr: 'Excel',
							title: function(){
								return 'REEFT Integration - Webservice Data Export';
								//return 'REEFT Integration - Webservice Data Export (' + sql_where + ')';
							},
							messageTop : function(){
								return 'SQL: ' + sql_statement;
							},
							filename: function(){
								var p_id = moment().format('YYYY-MM-DD HH.mm.ss');
								return 'REEFT Integration - Webservice Data Export - ' + p_id;
							},
							exportOptions: {
								// Fields to export (https://datatables.net/pk_key/button/csv#Examples)
								columns: [0,1,2,3,4,5,6]
							}
					},
					{
						extend: 'pdfHtml5',
						text: '<img src="images/pdf_logo.png" height="25"> PDF',
						titleAttr: 'PDF',
						orientation: 'landscape',
						title: 'REEFT Integration - Webservice Data Export - PDF',
						filename: function(){
								var p_id = moment().format('YYYY-MM-DD HH.mm.ss');
								return 'REEFT Integration - Webservice Data Export - PDF - ' + p_id;
						},
						exportOptions: {
							// Fields to export (https://datatables.net/pk_key/button/csv#Examples)
						columns: [0,1,2,3,4,5,6],
						modifier: {
							page: 'all'
							}
						}
					}
				]
			},
			bottomEnd: {
				paging: {
					buttons: 12,
					firstLast: true,
					boundaryNumbers: true
				}
			}
		},
		language:
		{
					"decimal":        ",",
					"thousands":      ".",
					"emptyTable":     "<?php echo $reeft_datatable_emptyTable ?>",
					"info":           "<?php echo $reeft_datatable_Info ?>",
					"infoEmpty":      "<?php echo $reeft_datatable_InfoEmpty ?>",
					"InfoFiltered":   "<?php echo $reeft_datatable_InfoFiltered ?>",
					"infoPostFix":    "",
					"lengthMenu":     "<?php echo $reeft_datatable_LengthMenu ?>",
					"loadingRecords": "",
					"processing":     "<?php echo $reeft_datatable_Processing ?>",
					"search":         "<?php echo $reeft_datatable_Search ?>",
					"zeroRecords":    "<?php echo $reeft_datatable_ZeroRecords ?>",
					"paginate":
						{
							"first":    "<?php echo $reeft_datatable_First ?>",
							"last":     "<?php echo $reeft_datatable_Last ?>",
							"next":     "<?php echo $reeft_datatable_Next ?>",
							"previous": "<?php echo $reeft_datatable_Previous ?>"
						},
					"aria": {
						"orderable":  "Order by this column",
						"orderableReverse": "Reverse order this column"
					}

		},
        "rowCallback": function(row, data, index)
		{



		},
        "preDrawCallback": function(settings)
		{
		},
		"initComplete": function ()
		{



		}

    });


	//=============================================================================
	// Setup the data to be able to update the table without reloading from the server
	//=============================================================================

		// Save the table in a global variable
		thisGlobalTableData = $('#REEFTvisual_data').DataTable();


		// Handle click on "Edit" button
		$('#REEFTvisual_data tbody').on('click', '.edit-btn', function() {
			thisCurrentRow 	= $(this).closest('tr');
			thisGlobalRowData = thisGlobalTableData.row(thisCurrentRow).data();


			// Debug
			// console.log("edit");
			// console.log(thisGlobalRowData);
			//console.log(thisCurrentRow);

			 dataChange();

		});

		// Handle click on "Delete" button
		$('#REEFTvisual_data tbody').on('click', '.delete-btn', function() {
			thisCurrentRow 	= $(this).closest('tr');
			thisGlobalRowData = thisGlobalTableData.row(thisCurrentRow).data();

			// Debug
			// console.log(thisGlobalRowData);
			// console.log(thisCurrentRow);

			dataDeleteConfirm();

		});


	//=============================================================================

	//=============================================================================
	// Place curor in search field - the wrapper id is provided by datatables - debug it!
	//=============================================================================
	$('#REEFTvisual_data_wrapper div.dt-search .dt-input').focus();
	//=============================================================================

}

//=============================================================================
// Reason addd  -- not used
//=============================================================================
function dataAdd ( input_pk_type )
{

			var mytimeStamp = $('#input-timeStamp').val();


			resetModalInputFields();
			setModalInputDefaultFields();

			$('#input-mode').val('*add');


			// Reset save field
			save_timeStamp = '';
			save_pk_key = '';

			// Reset modal message
			resetModalMessage();

			// Remove key fields readonly
			$('#modal-input-timeStamp').removeAttr('readonly','readonly');
			$('#data-result-button-group-modal').removeClass('d-none');

			// Show modal
			$('#mainlog_maintainModal').modal('show');

			$('#mainlog_maintainModal').on('shown.bs.modal', function () {
				$('#modal-input-timeStamp').trigger('focus');
			})

}

//=============================================================================
// Show details
//=============================================================================
function dataChange( )
{

	var row = thisGlobalRowData;

	// Save in fields
	var pk_key      	= row["pk_key"];
	var timeStamp    	= row["timeStamp"];
	var logType      	= row["logType"];
	var logCode      	= row["logCode"];
	var logPgm      	= row["logPgm"];
	var dataLine      	= row["dataLine"];
	var clientID      	= row["clientID"];

	var counter     = row["counter"];

	$('#input-mode').val('*update');

	save_timeStamp = timeStamp;
	save_pk_key = pk_key;

	// Move to input fields
	$('#modal-input-counter').val(counter);

	$('#modal-input-pk_key').val(pk_key);
	$('#modal-input-timeStamp').val(timeStamp);
	$('#modal-input-logType').val(logType);
	$('#modal-input-logCode').val(logCode);
	$('#modal-input-logPgm').val(logPgm);
	$('#modal-input-dataLine').val(dataLine);
	$('#modal-input-clientID').val(clientID);

	// Make key fields readonly
	$('#modal-input-timeStamp').attr('readonly','readonly');
	$('#data-result-button-group-modal').removeClass('d-none');

	$('.read-only-class').attr('readonly','readonly');

	// Reset modal message
	resetModalMessage();

	// Show modal
	$('#mainlog_maintainModal').modal('show');

	$('#mainlog_maintainModal').on('shown.bs.modal', function () {
		$('#modal-input-SEQUENCE').trigger('focus');
	})

}


//=============================================================================
// Save
//=============================================================================
function dataSave()
{
	// Reset modal message
	resetModalMessage();


	// Check content of fields
	if ( $('#modal-input-timeStamp').val() == '' ) {
		$('#modal-message').addClass('border-bottom').html( '<?php echo $reeft_error0082 ?>' );
		$('#modal-save-button').addClass('disabled').prop("disabled", true);
		$('#modal-input-timeStamp').trigger('focus');
		return false;
	}

	// if ( $('#modal-input-TOK_ALPHA').val() == '' ) {
		// $('#modal-message').addClass('border-bottom').html( '<?php echo $reeft_error0085 ?>' );
		// $('#modal-save-button').addClass('disabled').prop("disabled", true);
		// $('#modal-input-TOK_ALPHA').trigger('focus');
		// return false;
	// }

	if ( $('#modal-input-TOK_ADRNBR').val() == '' ) {
		$('#modal-message').addClass('border-bottom').html( '<?php echo $reeft_error0084 ?>' );
		$('#modal-save-button').addClass('disabled').prop("disabled", true);
		$('#modal-input-TOK_ADRNBR').trigger('focus');
		return false;
	}

	if ( $('#modal-input-timeStamp').val() == '' ) {
		$('#modal-message').addClass('border-bottom').html( '<?php echo $reeft_error0086 ?>' );
		$('#modal-save-button').addClass('disabled').prop("disabled", true);
		$('#modal-input-timeStamp').trigger('focus');
		return false;
	}

	// if ( $('#modal-input-pk_key').val() == '' ) {
		// $('#modal-message').addClass('border-bottom').html( '<?php echo $reeft_error0083 ?>' );
		// $('#modal-save-button').addClass('disabled').prop("disabled", true);
		// $('#modal-input-pk_key').trigger('focus');
		// return false;
	// }

	var mode = $('#input-mode').val();

	//===============================================================================
	// Remove # if any
	//===============================================================================

		// Setup remove string
		let mySaveString;

		// var myWorkField = $('#modal-input-DESCP1').val();
		// myWorkField = myWorkField.replace("#", "");
		// $('#modal-input-DESCP1').val( myWorkField );

		// var myWorkField = $('#modal-input-DESCP2').val();
		// myWorkField = myWorkField.replace("#", "");
		// $('#modal-input-DESCP2').val( myWorkField );

		var myWorkField = $('#modal-input-TOK_ENV').val();
		myWorkField = myWorkField.replace(",", ".");
		myWorkField = parseFloat(myWorkField).toFixed(3).toString();
		$('#modal-input-CHRMIN').val( myWorkField );

		var myWorkField = $('#modal-input-TOK_ENVCOL').val();
		myWorkField = myWorkField.replace(",", ".");
		myWorkField = parseFloat(myWorkField).toFixed(3).toString();
		$('#modal-input-CHRMAX').val( myWorkField );


		var myWorkField = $('#modal-input-TOK_JASSVR').val();
		myWorkField = myWorkField.replace(",", ".");
		myWorkField = parseFloat(myWorkField).toFixed(0).toString();
		$('#modal-input-DBGVAL').val( myWorkField );

	//===============================================================================

	// Make array and json
	var myData = $('#dataForm').find('input, select, textarea').serializeArray();

	var result = JSON.stringify(myData);

	var result = encodeURIComponent( result );
	// console.log(result);
	// console.log(myData);
	// return;

	var parmData = 'data=' + result
				 + '&mode=' + mode
				 ;

	$.ajax({
		url: "mainlog_maintain_save.php",
		type: "POST",
		data: parmData,
		dataType: "json",
		cache: false,
	})
	.done(function( jsonData ) {


		//=================================================================
		// START - Update the table without doing a server reload
		// Only update
		//=================================================================
		if ( mode == '*update' ) {

			event.preventDefault();

			// Debug
			// console.log(myGlobalRowData[0]);
			// console.log(myGlobalRowData[1]);
			// console.log(myGlobalRowData[2]);
			// console.log(myCurrentRow);
			// console.table(myGlobalTableData);

			// Get the data for the "Change/Delete button", so we do not need to create it again
			// myChangeButtonData = myGlobalRowData[6];
			// myDeleteButtonData = myGlobalRowData[7];

			//==============================================
			// Use this if you want to update the whole row
			//==============================================
			// myGlobalTableData.row(myCurrentRow).data([
														// modal_input_HUB_WEBNAM,
														// modal_input_LSTCAL,
														// modal_input_DESCP1,
														// modal_input_DESCP2,
														// modal_input_COUNT,
														// modal_input_SERTYP,
														// myChangeButtonData,
														// myDeleteButtonData,
														// modal_input_DESCP1,
														// modal_input_DESCP2
													// ])
													// .draw(false)
													// ;

			//=======================================================
			// Use this if you want to update one or more table cells
			//=======================================================

			// thisGlobalTableData.cell(thisCurrentRow,  0  ).data( $('#modal-input-timeStamp').val() );
			// thisGlobalTableData.cell(thisCurrentRow,  1  ).data( $('#modal-input-dataLine').val() );
			// thisGlobalTableData.cell(thisCurrentRow,  2  ).data( $('#modal-input-TOK_ADRNBR').val() + '<br>' + $('#modal-input-TOK_ALPHA').val() );
			// thisGlobalTableData.cell(thisCurrentRow,  3  ).data( $('#modal-input-pk_key').val()  );
			// thisGlobalTableData.cell(thisCurrentRow,  4  ).data( $('#modal-input-timeStamp').val() );
			// thisGlobalTableData.cell(thisCurrentRow,  6  ).data( $('#modal-input-TOK_ROLE').val() );
			// thisGlobalTableData.cell(thisCurrentRow,  7  ).data( $('#modal-input-TOK_ENV').val() );
			// thisGlobalTableData.cell(thisCurrentRow,  8  ).data( $('#modal-input-TOK_ENVCOL').val() );
			// 9 = Show on chart Y/N
			// 10 = Edit button
			// 11 = Delete button
			// 12 = Transactions
			// 13 = Chart
			// thisGlobalTableData.cell(thisCurrentRow,  14 ).data( $('#modal-input-TOK_JASSVR').val() );
			// thisGlobalTableData.cell(thisCurrentRow,  15 ).data( $('#modal-input-TOK_ADRNBR').val() );
			// thisGlobalTableData.cell(thisCurrentRow,  16 ).data( $('#modal-input-TOK_ALPHA').val() );
			// thisGlobalTableData.cell(thisCurrentRow,  17 ).data( $('#modal-input-TOK_APPRLS').val() );
			// thisGlobalTableData.cell(thisCurrentRow,  18 ).data( $('#modal-input-TOK_MACHIN').val() );


			// Show new color
			// var TOK_APPRLS_TEXT = '<div style="display:block;margin:auto;width:25px;height:25px; background-color:' + $('#modal-input-TOK_APPRLS').val() + '">&nbsp;</div>';
			// thisGlobalTableData.cell(thisCurrentRow,  5  ).data( TOK_APPRLS_TEXT );
			// //thisGlobalTableData.cell(thisCurrentRow,  5  ).data( TOK_APPRLS_TEXT ).draw(false);

			// if ( $('#modal-input-TOK_MACHIN').val() == 'N' ) {
				// TOK_MACHIN_text = '<?php echo $reeft_NO ?>';
			// } else {
				// TOK_MACHIN_text = '<?php echo $reeft_YES ?>';
			// }
			// thisGlobalTableData.cell(thisCurrentRow,  9  ).data( TOK_MACHIN_text );




		}
		//=================================================================
		// END - Update the table without doing a server reload
		//=================================================================

		//=================================================================
		// Close the modal
		//=================================================================
		$('#mainlog_maintainModal').modal('hide');

		//=================================================================
		// Only when add
		//=================================================================
		if ( mode == '*add' ) {
			var myButtonID = 'select-button-line-id-' + $('#input-timeStamp').val();
			$('#' + myButtonID).click();
			getData('');
		}


	})
	.always(function( jsonData ) {


		// Reset mode
		$('#input-mode').val('');

		// Reset input fields
		resetModalInputFields();


	})
	.fail(function( xhr, ajaxOptions, thrownError ) {
		console.log('I am failed..');
		console.log( thrownError );
		console.log( xhr );

	});

}

//=============================================================================
// Delete confirm
	//=============================================================================
function dataDeleteConfirm( )
{

	$('#input-mode').val('*delete');

	var row = thisGlobalRowData;

	var input_timeStamp = row["timeStamp"];

	$('#confirm-delete-timeStamp').val(input_timeStamp);

	// Create confirm text
	$('#confirm-delete-text-timeStamp').html(input_timeStamp);

	$('#mainLog_confirmDeleteModal').modal('show');

}

//=============================================================================
// Delete
//=============================================================================
function dataDeleteExec()
{
	// Reset modal message
	resetModalMessage();

	var mode = $('#input-mode').val();

	// Make array and json
	var myData = $('#dataForm-delete').find('input, select').serializeArray();
	var result = JSON.stringify(myData);

	// console.log(result);
	// console.log(myData);
	//return;

	var parmData = 'data=' + result
				 + '&mode=' + mode
				 ;

	$.ajax({
		url: "mainlog_maintain_save.php",
		type: "POST",
		data: parmData,
		dataType: "json",
		cache: false,
	})
	.done(function( jsonData ) {


	$('#mainLog_confirmDeleteModal').modal('hide');

	//=================================================================
	// Only when add
	//=================================================================
	if ( mode == '*delete' ) {
		var myButtonID = 'select-button-line-id-' + $('#input-timeStamp').val();
		$('#' + myButtonID).click();

		resetModalInputFields();

		getData('');
	}


	})
	.always(function( jsonData ) {

	})
	.fail(function( xhr, ajaxOptions, thrownError ) {
		console.log('I am failed..');
		console.log( xhr );

	});

}


//=============================================================================
// Check if userid exists
//=============================================================================
function checkDataExists()
{

	return;

	var timeStamp = $('#modal-input-timeStamp').val();

	// If update, then the "orginal" code is ok
	if ( $('#input-mode').val() == '*update' ) {
		if ( timeStamp == save_timeStamp ) {
	//		return;
		}
	}

	var parmData = 'timeStamp=' + dataLine
				 ;

	$.ajax({
		url: "hub_conchk_get.php",
		type: "GET",
		data: parmData,
		dataType: "json",
		cache: false,
	})
	.done(function( jsonData ) {

		var returnCode 				= jsonData.header.returnCode;
		var returnMsg 				= jsonData.header.returnMsg;
		var entries_found 			= jsonData.header.entries_found;

		var returnConfigValue 		= jsonData.header.returnConfigValue;
		var returnConfigValueText	= jsonData.header.returnConfigValueText;


		if ( returnConfigValue	== '50') {
			$('#modal-message').addClass(' border-bottom').html( '<?php echo $reeft_error0087 ?>' );
			$('#modal-save-button').addClass('disabled').prop("disabled", true);
			$('#modal-input-timeStamp').trigger('focus');
			return false;
		} else {
			// DESCP = jsonData.detail[0].DESCP
			// $('#modal-input-pk_key').val( DESCP );
		}

		// Reset modal message
		resetModalMessage();

	})
	.always(function( jsonData ) {

	})
	.fail(function( xhr, ajaxOptions, thrownError ) {
		console.log('I am failed..');
		console.log( xhr );

	});

}

//=============================================================================
// Show deleted
//=============================================================================
function showDeleted()
{

	var show_deleted = $('#input-show-deleted').val();


	if ( show_deleted == 'Y' ) {
		$('#button-show-deleted').html('<?php echo $reeft_NO ?>');
		$('#input-show-deleted').val('N');
	} else {
		$('#button-show-deleted').html('<?php echo $reeft_YES ?>');
		$('#input-show-deleted').val('Y');
	}


}

//=============================================================================
// Set default modal input fields
//=============================================================================
function setModalInputDefaultFields()
{

			var mytimeStamp = $('#input-timeStamp').val();

			// $('#modal-input-dataLine').val('1');

			// $('#modal-input-TOK_APPRLS').val( $('#input-current-date').val() );
			// $('#modal-input-TOK_ROLE').val( $('#input-current-time').val() );

}

//=============================================================================
// Reset modal input fields
//=============================================================================
function resetModalInputFields()
{

			$('#modal-input-pk_key').val('');
			$('#modal-input-timeStamp').val('');
			$('#modal-input-logType').val('');
			$('#modal-input-logCode').val('');
			$('#modal-input-logPgm').val('');
			$('#modal-input-dataLine').val('');
			$('#modal-input-clientID').val('');
			$('#modal-input-NXTTKWEXT1').val('');
			$('#modal-input-NXTTKMEXT1').val('');
			$('#modal-input-NXTTKWEXT2').val('');
			$('#modal-input-NXTTKMEXT2').val('');
			$('#modal-input-TOTLIRUNSC').val('');
			$('#modal-input-TOTLISTPSC').val('');
			$('#modal-input-TOTLIRUNTX').val('');
			$('#modal-input-TOTLISTPTX').val('');
			$('#modal-input-PRDCNT').val('0');
			$('#modal-input-PRDCNT_ER').val('0');
			$('#modal-input-PRDCNT_EXP').val('0');
			$('#modal-input-SEQUENCE').val('0');

			$('#input-mode').val('');

}

//=============================================================================
// Log off
//=============================================================================
function signoff()
{

	window.location.href = "logout.php";

}

//=============================================================================
// Load page
//=============================================================================
function loadPage(url, p1, p2, p3)
{

	window.location.href = url;

}

//=============================================================================
// Reset modal message
//=============================================================================
function resetModalMessage() {

	// Reset
	//$('#modal-message').removeClass('p-2 font-weight-bold border border-danger rounded bg-light').html( '&nbsp;' );

	$('#modal-message').removeClass('border-bottom').html( '&nbsp;' );
	$('#modal-save-button').removeClass('disabled').prop("disabled", false);

}

//=============================================================================
// Clean input string
//=============================================================================
function cleanInputString( myWorkField )
{

	let charactersToRemove = '?#"\'';
	let myPattern = new RegExp('[' + charactersToRemove + ']', 'g');

	myWorkField = myWorkField.replace(myPattern,'');

	return myWorkField;

}

//=============================================================================
// Full screen popup
//=============================================================================
function popUpFull( url, p1, p2, p3 )
{

	var winname = 'win_' + url;

	params  = 'width='+screen.width;
	params += ', height='+screen.height;
	params += ', top=0, left=0'
	params += ', fullscreen=yes';
	params += ',scrollbars=1';

	overview_win = window.open(url,winname, params);
	if (window.focus) {overview_win.trigger('focus')}
	return false;

}

//=============================================================================
// screen popup - center
//=============================================================================
function popUpCenter(url, p1, p2, p3)
{

	var v1_w  = screen.availWidth;
	var v1_h  = screen.availHeight;

	if ( parseInt(v1_w) > 1800 ) {
		v1_w = 1800;
		v1_h = v1_h - 200;
		v1_center = v1_w/0.8;
	}

	// Center popup as good as possible
	var left = (screen.width - v1_w) / 2;
	var top = (screen.height - v1_h) / 4;

	var winname = 'win_' + url;

	params  = 'width='+v1_w;
	params += ', height='+v1_h;
	params += ', top=' + top + ', left=' + left;
	params += ', fullscreen=yes';
	params += ',scrollbars=1';

	overview_win = window.open(url,winname, params);
	if (window.focus) {overview_win.trigger('focus')}
	return false;

}

//=============================================================================
// screen popup - center - bigger
//=============================================================================
function popUpCenterBig(url, p1, p2, p3)
{

	var v1_w  = screen.availWidth;
	var v1_h  = screen.availHeight;

	// Get 25%
	v1_w_pct = v1_w * 0.25;

	v1_w_new = v1_w - v1_w_pct;


	if ( v1_w_new < 1 ) {
		v1_w_new	= 1800;
	}

	v1_w = v1_w_new;
	v1_h = v1_h - 200;
	v1_center = v1_w/0.8;

	// Center popup as good as possible
	var left = (screen.width - v1_w) / 2;
	var top = (screen.height - v1_h) / 4;

	var winname = 'win_' + url;

	params  = 'width='+v1_w;
	params += ', height='+v1_h;
	params += ', top=' + top + ', left=' + left;
	params += ', fullscreen=yes';
	params += ',scrollbars=1';

	overview_win2 = window.open(url, winname, params);
	if (overview_win2 && !overview_win2.closed) {
		overview_win2.focus();
	}


}

//=============================================================================
// Popup top
//=============================================================================
function popUpTop(url, p1, p2, p3)
{

	var winname = 'win_' + url;

	w = 650;
	h = 750;

	params  = 'width='+w;
	params += ', height='+h;
	params += ', top=0, left=0'
	params += ', fullscreen=no';
	params += ',scrollbars=1';

	overview_win = window.open(url,winname, params);
	if (window.focus) {overview_win.trigger('focus')}
	return false;
}

//=============================================================================
// Clean input string
//=============================================================================
function cleanInputString( myWorkField )
{

	let charactersToRemove = '?#"\'';
	let myPattern = new RegExp('[' + charactersToRemove + ']', 'g');

	myWorkField = myWorkField.replace(myPattern,'');

	return myWorkField;

}


//=============================================================================
// Select line modal
//=============================================================================
function selectGroupValueModal( inputLine )
{

	$('#modal-input-timeStamp').val( inputLine );

	var selectButtonLineID = 'select-button-line-id-modal-' + inputLine;

	$('.select-button-line-modal').removeClass('btn-success').addClass('btn-primary');
	$('#' + selectButtonLineID).removeClass('btn-primary').addClass('btn-success');

	// Place cursor
	$('#modal-input-timeStamp').trigger('focus');
	resetModalMessage();

}

//=============================================================================
// Reset line modal
//=============================================================================
function resetLineModal()
{

	resetModalMessage()

	let inputLine = $('#modal-input-timeStamp').val();

	if ( inputLine == '' ) {
		$('.select-button-line-modal').removeClass('btn-success').addClass('btn-primary');
	}

}

//=============================================================================
// Close modal
//=============================================================================
function closeModal() {


	$('#mainlog_maintainModal').modal('hide');

}

//=============================================================================
// Scroll to something
//=============================================================================
function scrollToSomething( target )
{

	//$.scrollTo('0',3200);

	thisID = '#' + target;
	$.scrollTo( thisID, 1000);

}

//=============================================================================
// Save file
//=============================================================================
function saveFile( i_filename )
{

var data = {
    key: 'value'
};
var fileName = i_filename;

// Create a blob of the data
var fileToSave = new Blob([JSON.stringify(data)], {
    type: 'application/json'
});

// Save the file
saveAs(fileToSave, fileName);


	// var file = new File(["Hello, world!"], filename, {type: "application/json;charset=utf-8"});
	// saveAs(file);

}

//=============================================================================
// copy to clipboard - prepare
//=============================================================================
function copyToClipBoardPrepare()
{


	// Get SQL statement
	copyToClipBoard( $('#input-sql-statement').text() );


}
//=============================================================================
// copy to clipboard
//=============================================================================
function copyToClipBoard( input_text_to_copy )
{

	$('#myInput').val( input_text_to_copy );

	// Get the text field
	var copyText = document.getElementById("myInput");

	// Select the text field
	copyText.select();
	copyText.setSelectionRange(0, 99999); // For mobile devices

	// Copy the text inside the text field
	navigator.clipboard.writeText(copyText.value);

	// Alert the copied text
	alert( copyText.value + ' ' + 'copied to clipboard' );

}

//=============================================================================
// Set months
//=============================================================================
function setDefaultMonths() {

		$('#default-month-buttons').html('');

		var monthButtons = '';

		var numberOfMonths = 6;

		curMdrVar = numberOfMonths;

		for (let step = 0; step < numberOfMonths; step++)
		{

			curMdrVar = parseInt( curMdrVar ) - 1;
			//curMdrVar = step;

			var defaultMonth = moment().subtract(curMdrVar, 'month').format("MM");

			var monthName = setDefaultMonthName( defaultMonth );
			createDefaultMonthButton(curMdrVar, defaultMonth, monthName);
		}

}

//=============================================================================
// Create button
//=============================================================================
function createDefaultMonthButton( number, month, monthName )
{

		var thisId = 'default-button-' + month;

		var currentYear = getDefaultYearCalc( number, month, monthName );

		var monthButton = '<button type="button" class="btn-default-date-interval btn btn-dark mr-1 mb-1" id="' + thisId + '" onclick="setDefaultFromToDateCalc(\'' + number + '\',\'' + month + '\')">' + monthName + ' ' + currentYear + '</button>'


		$('#default-month-buttons').append(monthButton);

}

//=============================================================================
// Set month names
//=============================================================================
function setDefaultMonthName( month ) {


	var monthName = '';

	if ( month == '01') {
		monthName = '<?php echo $reeft_month_01 ?>';
	}
	else if ( month == '02') {
		monthName = '<?php echo $reeft_month_02 ?>';
	}
	else if ( month == '03') {
		monthName = '<?php echo $reeft_month_03 ?>';
	}
	else if ( month == '04') {
		monthName = '<?php echo $reeft_month_04 ?>';
	}
	else if ( month == '05') {
		monthName = '<?php echo $reeft_month_05 ?>';
	}
	else if ( month == '06') {
		monthName = '<?php echo $reeft_month_06 ?>';
	}
	else if ( month == '07') {
		monthName = '<?php echo $reeft_month_07 ?>';
	}
	else if ( month == '08') {
		monthName = '<?php echo $reeft_month_08 ?>';
	}
	else if ( month == '09') {
		monthName = '<?php echo $reeft_month_09 ?>';
	}
	else if ( month == '10') {
		monthName = '<?php echo $reeft_month_10 ?>';
	}
	else if ( month == '11') {
		monthName = '<?php echo $reeft_month_11 ?>';
	}
	else if ( month == '12') {
		monthName = '<?php echo $reeft_month_12 ?>';
	}
	else {
		monthName = 'Unknown: ' + month;
	}

	return monthName;

}

//=============================================================================
// Set default from 7 to date
//=============================================================================
function getDefaultYearCalc( sub_month, month )
{

		// Calcualte date intervals
		var defaultFromDate	= moment().subtract( parseInt(sub_month), 'month').format("YYYY-MM-01" );
		var defaultToDate	= moment().add(1, 'day').format("YYYY-MM-DD");
		var defaultToDate   = moment().subtract( parseInt(sub_month), 'month').endOf('month').format('YYYY-MM-DD');


		var currentYear   = moment(defaultFromDate).format('YYYY');
		//console.log(defaultFromDate + ' ' + defaultToDate + ' ' + currentYear);

		return currentYear;


}

//=============================================================================
// Set default from 7 to date
//=============================================================================
function setDefaultFromToDateCalc( sub_month, month )
{

		// Calcualte date intervals
		var defaultFromDate	= moment().subtract( parseInt(sub_month), 'month').format("YYYY-MM-01" );
		var defaultToDate	= moment().add(1, 'day').format("YYYY-MM-DD");
		var defaultToDate   = moment().subtract( parseInt(sub_month), 'month').endOf('month').format('YYYY-MM-DD');

		// Move to input fields
		$('#input-fromdate').val( defaultFromDate );
		$('#input-todate').val( defaultToDate );

		$('#input-fromtime').val( '00:00' );
		$('#input-totime').val( '23:59' );


		var thisId = 'default-button-' +  month;


		$('.btn-default-date-interval').removeClass('btn-success').addClass('btn-dark');
		$('#' + thisId).removeClass('btn-dark').addClass('btn-success');

		// Click get button
		//$('#button-call-import-log-overview').trigger('click');
		$('#updateButton').trigger('click');


}


//=============================================================================
// Get data - search
//=============================================================================
function setWebserviceSearch( input_logCode )
{

	// Save curreent webservice name
	$('#input-logCode').val( input_logCode );

	var selectButtonLineID 		= 'select-button-line-id-' + input_logCode;

	// Set clicked button
	$('.select-button-line').removeClass('btn-success').addClass('btn-dark');
	$('#' + selectButtonLineID).removeClass('btn-dark').addClass('btn-success');

	// Search - destory table and start over again
	//$('#REEFTvisual_data').DataTable().clear().destroy();

	//$('#REEFTvisual_data').DataTable().destroy();
	//$('#REEFTvisual_data').DataTable().clear().destroy(true);
	$('#REEFTvisual_data').DataTable().clear().destroy();
	setDataTables();

}

//=============================================================================
// Show more search fields
//=============================================================================
function showMoreSearchFields()
{

	var input_showMoreSearchFields = $('#input-showMoreSearchFields').val();

	// Show or not show?
	if ( input_showMoreSearchFields == 'Y' ) {

		$('#misc-1-search-fields').addClass('d-none');
		$('#misc-2-search-fields').addClass('d-none');
		$('#input-showMoreSearchFields').val('N');
		$('#button-showMoreSearchFields').removeClass('btn-success').addClass('btn-primary').html('<?php echo $reeft_text0008 ?>...');
		$('#input-fromdate').focus();

	} else {

		$('#misc-1-search-fields').removeClass('d-none');
		$('#misc-2-search-fields').removeClass('d-none');
		$('#input-showMoreSearchFields').val('Y');
		$('#button-showMoreSearchFields').removeClass('btn-primary').addClass('btn-success').html('<?php echo $reeft_text0009 ?>...');
		$('#input-logType').focus();

	}


}

//=============================================================================
// Show SQL
//=============================================================================
function showSQL()
{

	var input_showSQLstatement = $('#input-showSQLstatement').val();


	// Show or not show?
	if ( input_showSQLstatement == 'Y' ) {

		$('#input-showSQLstatement').val('N');
		$('#button-showSQLstatement').removeClass('btn-success').addClass('btn-primary').html('<?php echo $reeft_text0010 ?>');
		$('#input-sql-col').addClass('d-none');
		$('#button-copySQLstatement').addClass('d-none');
		$('#input-sql-statement').text( '' );
		$('#input-fromdate').focus();

	} else {

		$('#input-showSQLstatement').val('Y');
		$('#button-showSQLstatement').removeClass('btn-primary').addClass('btn-success').html('<?php echo $reeft_text0011 ?>');
		$('#input-sql-col').removeClass('d-none');
		$('#button-copySQLstatement').removeClass('d-none');
		$('#input-sql-statement').text( sql_statement );

	}


}

//=============================================================================
// Set clock
//=============================================================================
function updateClock() {

	var currentTime = moment().format('YYYY-MM-DD HH:mm:ss');
	currentTime = REEFT_format_date( currentTime, DFT_DATE_DISPLAY_FORMAT )

	$('#input-current-date').val( moment().format('YYYY-MM-DD') );
	$('#input-current-time').val( moment().format('HH:mm:ss') );


	$('#current-time').html( currentTime );

	// If add mode update date/time in modal window
	if ( $('#input-mode').val() == '*add' )
	{

		$('#modal-input-TOK_APPRLS').val( $('#input-current-date').val() );
		$('#modal-input-TOK_ROLE').val( $('#input-current-time').val() );

	}

}

//=============================================================================
// jQuery - Ready
//=============================================================================
$(document).ready(function()
{

	// When closing modal
	$('#mainlog_maintainModal').on('hidden.bs.modal', function (e) {
		resetModalInputFields();
	})


	// Do not show deleted
	$('#input-show-deleted').val('Y');
	$('#input-timeStamp').val('<?php echo $timeStamp ?>');


	// $('#input-fromdate').val('<?php echo $fromdate ?>');
	// $('#input-fromtime').val('<?php echo $fromtime ?>');
	// $('#input-todate').val('<?php echo $todate ?>');
	// $('#input-totime').val('<?php echo $totime ?>');



	//$('#delay-marker-id').html('<i id="delay-marker-icon-id" class="text-success fa-solid fa-circle"></i>');

	// Get data done by datatables
	setDataTables();

	//-----------------------------------------------------------------------
	// Start the clock
	//-----------------------------------------------------------------------
		updateClock();
		setInterval(function() {
			updateClock();
		}, 1000);
	//-----------------------------------------------------------------------

	//-----------------------------------------------------------------------
	// Set default from/to date
	//-----------------------------------------------------------------------
		//setDefaultFromToDate('2');
		setDefaultMonths();
	//-----------------------------------------------------------------------


	//-----------------------------------------------------------------------
	// Set font awesome icon type
	//-----------------------------------------------------------------------
	// Value is from config/config.php
	var iconType = '<?php echo $DFT_SET_FONT_AWESOME_ICON_TYPE ?>';
	setFontAwesomeIconType( iconType );
	//-----------------------------------------------------------------------

	//-----------------------------------------------------------------------
	// Delay keyup checker
	//-----------------------------------------------------------------------
	// var delay = (function () {
		// var timer = 0;
		// return function (callback, ms) {
			// clearTimeout(timer);
			// timer = setTimeout(callback, ms);
		// };
	// })()


	// DataTable search delay
	//$('#REEFTvisual_data_wrapper .dt-input')
	//$('#REEFTvisual_data_wrapper .dataTables_filter input')
	$('#REEFTvisual_data_wrapper #dt-search-0')
    // .unbind() // overrule normal behavior
    // .bind('keyup', function(e){

		// $('#delay-marker-icon-id').removeClass('text-success').addClass('text-danger');


		// //inputValue = $('.dataTables_filter input').val();
		// inputValue = $('#dt-search-0').val();

		// var currSearchValue = $('#input-search-line').val();
		// if (inputValue != currSearchValue) {
			// $('#input-search-line').val( inputValue );
			// //If enter or delete we update immediately, consider to add backspace=8 and delete=46 also
			// const keyList = [13];
			// if (keyList.includes(e.keyCode)) {
				// // console.log('immediately ' + inputValue );
				// $('#delay-marker-icon-id').removeClass('text-danger').addClass('text-success');
				// console.log('1 ' + inputValue)
				// thisGlobalTableData.search(inputValue).draw(); // fire in the hole
			// } else {
				// delay(function () {
					// //console.log('this will hit, once user has not typed for 1 second ' + inputValue );
					// $('#delay-marker-icon-id').removeClass('text-danger').addClass('text-success');
					// console.log('2 ' + inputValue)
					// thisGlobalTableData.search(inputValue).draw(); // fire in the hole
				// }, 0800);
			// }
		// }
	// });


	//=========================================================================================================
	// Set color picker - TEXT
	//
	// Create HEX value (https://en.wikipedia.org/wiki/Web_colors)
	//	var hexValueColor = color.toHexString();
	//
	//	Create RGB (https://en.wikipedia.org/wiki/RGB_color_model)
	//		hexcolor = hexcolor.replace("#", "");
	//		var r = parseInt(hexcolor.substr(0,2),16);
	//		var g = parseInt(hexcolor.substr(2,2),16);
	//		var b = parseInt(hexcolor.substr(4,2),16);
	//		var yiq = ((r*299)+(g*587)+(b*114))/1000;
	//
	//
	//	Create YIQ (https://en.wikipedia.org/wiki/YIQ)
	//		if ( yiq >= 128) {
	//			var textColor = 'black';
	//		} else {
	//			var textColor = 'white';
	//		}
	//
	//	console.log('change: ' + hexcolor + ' ' + hexValueColor + ' ' + yiq + ' ' + r + ' ' + g + ' ' + b );
	//
	//=========================================================================================================
	$(".text-color-palette").spectrum({
		showInitial: true,
		showInput: true,
		chooseText: "Vælg farve",
		cancelText: "Annuller",
		preferredFormat: "hex",
		color: "#000",
		showPalette: true,
		flat: false,
		palette: [
			["#000","#444","#666","#999","#ccc","#eee","#f3f3f3","#fff"],
			["#f00","#f90","#ff0","#0f0","#0ff","#00f","#90f","#f0f"],
			["#f4cccc","#fce5cd","#fff2cc","#d9ead3","#d0e0e3","#cfe2f3","#d9d2e9","#ead1dc"],
			["#ea9999","#f9cb9c","#ffe599","#b6d7a8","#a2c4c9","#9fc5e8","#b4a7d6","#d5a6bd"],
			["#e06666","#f6b26b","#ffd966","#93c47d","#76a5af","#6fa8dc","#8e7cc3","#c27ba0"],
			["#c00","#e69138","#f1c232","#6aa84f","#45818e","#3d85c6","#674ea7","#a64d79"],
			["#900","#b45f06","#bf9000","#38761d","#134f5c","#0b5394","#351c75","#741b47"],
			["#600","#783f04","#7f6000","#274e13","#0c343d","#073763","#20124d","#4c1130"]
		],
		// Called as the original input changes. Only happens when the input is closed or the 'Choose' button is clicked.
		change: function(color) {

			// Get hex color
			var hexValueColor = color.toHexString();

		},
		move: function(color) {

			// Get hex color
			var hexValueColor = color.toHexString();

		},
		show: function(color) {

			$('#input-current-color-picker').val( this.id );

			// Get hex color
			var hexValueColor = color.toHexString();

		},
		hide: function(color) {

			// Get hex color
			var hexValueColor = color.toHexString();


		}
	});


	//-----------------------------------------------------------------------
	// Check exists
	//-----------------------------------------------------------------------
	let $filter01 = $('#modal-input-timeStamp');
	$filter01.on('keyup', function () {
		delay(function () {
			var inputValue = $('#modal-input-timeStamp').val();
			if ( inputValue != '') {
			console.log('this will hit, once user has not typed for 1 second ' + inputValue );
				checkDataExists();
			}
		}, 0800);
	});


	//-----------------------------------------------------------------------
	// Event listener for the update button
	//-----------------------------------------------------------------------
    // $('#updateButton').on('click', function() {


        // // Trigger a redraw of the table
        // thisGlobalTableData.draw();
    // });


	//-----------------------------------------------------------------------
	// Bind the scroll to an element - controls lazy scroll
	//-----------------------------------------------------------------------
	//$('#modal-ifs-list-data-result').bind('scroll',chk_scroll);


	//-----------------------------------------------------------------------
	// Event listener for the update button
	//-----------------------------------------------------------------------
    $('#updateButton').on('click', function() {

        // Update input variables
		input_fromdate 		= $('#input-fromdate').val();
		input_fromtime 		= $('#input-fromtime').val();
		input_todate 		= $('#input-todate').val();
		input_totime 		= $('#input-totime').val();

		input_logType 		= $('#input-logType').val();
		input_logCode 		= $('#input-logCode').val();
		input_logPgm 		= $('#input-logPgm').val();
		input_clientID 		= $('#input-clientID').val();
		input_dataLine 		= $('#input-dataLine').val();
		
		if ( input_fromdate == '' ) {
			$('#main-message').html( '<?php echo $reeft_error0097 ?>' );
			$('#input-fromdate').trigger('focus');
			$('#message-wrapper').removeClass('d-none');
			return false;
		}
		
		if ( input_todate  == '' ) {
			$('#main-message').html( '<?php echo $reeft_error0098 ?>' );
			$('#input-todate').trigger('focus');
			$('#message-wrapper').removeClass('d-none');
			return false;
		}
		
		if ( input_fromdate > input_todate ) {
			$('#main-message').html( '<?php echo $reeft_error0039 ?>' );
			$('#input-fromdate').trigger('focus');
			$('#message-wrapper').removeClass('d-none');
			return false;
		}
		
		$('#message-wrapper').addClass('d-none');

        // Trigger a redraw of the table
        thisGlobalTableData.draw();
    });

	//-----------------------------------------------------------------------
	// Set short cuts
	//-----------------------------------------------------------------------

	// If add d-none class, do not add shortcut
	if ( GLOBAL_ADD_ALLOWED == 'Y' ) {
		shortcut.add("Alt+F6",function() {
			$('#add-button').click();
		});

		// Show add button
		$('#add-button').removeClass('d-none');
	}

	// More / less
	shortcut.add("F2",function() {
		$('#button-showMoreSearchFields').click();
	});

	// Show / hide SQL
	shortcut.add("Alt+F2",function() {
		$('#button-showSQLstatement').click();
	});


	// Make sure scroll is active when closeing the previevwer
	$('#import_done_listIFSfileModal').on("hidden.bs.modal", function (e) { //fire on closing modal box

        if ($('.modal:visible').length) { // check whether parent modal is opend after child modal close

            $('body').addClass('modal-open'); // if open mean length is 1 then add a bootstrap css class to body of the page

			// Remove iframe data...
			//$('#modal-preview-iframe').html('');

        }
    });


});
// -->
</script>

</head>

<body>

<div class="container-fluid mt-2 pl-3 pr-3">

		<input type="text" class="d-none" id="myInput">

		<input type="text" class="d-none" id="input-showMoreSearchFields">
		<input type="text" class="d-none" id="input-showSQLstatement">

		<input type="text" class="d-none" id="input-mode">
		<input type="text" class="d-none" id="input-current-date">
		<input type="text" class="d-none" id="input-current-time">

		<input type="text" class="d-none" id="input-show-deleted" >
		<input type="text" class="d-none" id="input-search-line">
		<input type="text" class="d-none" id="input-filter-line">

		<input type="text" class="d-none" id="input-rpyOffSet">
		<input type="text" class="d-none" id="input-rpyTotalRecordsFound">
		<input type="text" class="d-none" id="input-rpyTotalPages">
		<!--<input type="text" class="d-none" id="input-rpyPageSize">-->

		<div class="row">
			<div class="col-2">
				<img src="images/customer-logo.png" alt="Customer Logo">
			</div>
			<div class="col-8 text-center <?php echo $DFT_CLOCK_SIZE ?>">
				<i class="font-awesome-pseudo-class fa-thin fa-clock"></i>&nbsp;&nbsp;<span id="current-time"><?php echo date('d-m-Y h:i:s') ?></span>
			</div>
			<div class="col-2 text-right">

				<div class="btn btn-primary mb-1" onclick="loadPage('menu_main.php','','','')" title="<?php echo $reeft_go_to_my_dear_home ?>"><i class="font-awesome-pseudo-class fa-2x fa-thin fa-home"></i></div>

				<div class="d-none">
					<div class="btn btn-primary mb-1 d-none d-xl-inline-block" onclick="loadPage('menu_main.php','','','')" title="<?php echo $reeft_go_to_my_dear_home_03 ?>"><i class="font-awesome-pseudo-class fa-2x fa-thin fa-fort"></i></div>
					<div class="btn btn-danger mb-1 d-none d-lg-inline-block"  onclick="signoff()" title="<?php echo $reeft_go_to_my_dear_home_02 ?>"><i class="font-awesome-pseudo-class fa-thin  fa-2x fa-right-from-bracket"></i></div>
				</div>

			</div>
		</div>

		<div class="row">
			<div class="col-12 text-center">
				<div id="data-hub-company-information"></div>
			</div>
		</div>


		<div class="card mt-2">

					<div class="card-header text-muted">
				<div class="row mt-2">

					<div class="col-4 h4">
						<i class="font-awesome-pseudo-class fa-thin fa-paint-roller"></i> <?php echo "$reeft_text0246"; ?>
					</div>

					<div class="col-4 text-center">
						<div id="working-message-text"></div>
					</div>

					<div class="col-4 text-right font-weight-bold">

							<div class="row">
								<div class="col text-right">
									<?php echo $reeft_text0061 ?> : <span id="text-total-records-found">...</span><br>
								</div>
							</div>
					</div>

				</div>
			</div>


			<div class="card-body">

			<!-- Message if screen is not wide enough -->
				<div class="container-fluid mt-2 mb-4 d-block d-lg-none">
					<div id="general-message-top" class="border border-danger rounded p-2 text-danger font-weight-boldx"><?php echo $reeft_error0040a ?></div>
				</div>
			<!-- Message if screen is not wide enough -->

				<!-- SQL statement -->
				<div id="sql-wrapper" class="d-noneZ">
				<div class="d-none d-lg-block">
					<div class="row mb-2">
						<div id="input-sql-col" class="col-11 border p-1 d-none">
							<div title="<?php echo $reeft_text0012 ?>" class="font-weight-bold p-1" style="background-color:AntiqueWhite" id="input-sql-statement"></div>
						</div>
					</div>
				</div>
				</div>

				<!-- Group lines found -->
				<!--<div class="d-none d-lg-block">-->
				<div class="d-none">
					<div class="row mb-2">
						<div class="col-12 p-1">
							<div id="data-result-button-group"></div>
						</div>
					</div>
				</div>

				<!-- Message wrapper start -->
				<div id="message-wrapper" class="d-none mb-2">
					<div class="row">
						<div class="col-12 text-left">
							<div class="font-weight-bold text-danger border border-danger rounded p-2 " id="main-message">&nbsp;</div>
						</div>
					</div>
				</div>
				
				<!-- From / to date wrapper start -->
				<div id="from-to-date-wrapper" class="d-noneX">

					<div class="row mb-1">
						<div class="col text-left">
							<div class="d-noneX" id="default-month-buttons"></div>
						</div>

						<div class="col text-right">
							<button id="button-copySQLstatement" onclick="copyToClipBoardPrepare()" class="d-none btn btn-primary btn-sm"><?php echo $reeft_text0012 ?></button>
							<button id="button-showSQLstatement" title="Alt+F2=toggle" style="width:100px" onclick="showSQL()" class="btn btn-primary btn-sm"><?php echo $reeft_text0010 ?></button>
							<button id="button-showMoreSearchFields" title="F2=toggle" style="width:100px" onclick="showMoreSearchFields()" class="btn btn-primary btn-sm"><?php echo $reeft_text0008 ?>...</button>
						</div>
					</div>

					<div class="row mb-1">
						<div class="col-xl-4 col-lg-4 col-md-6 col-sm-4 col-xs-4 mt-1">

							<div class="row">
								<div class="col">
									<small><?php echo $reeft_text0121 ?></small>
								</div>
							</div>
							<div class="row">
								<div class="col mb-1">
									<input id="input-fromdate" type="date" class="form-control">
								</div>
								<div class="col">
									<input id="input-fromtime" type="time" class="form-control">
								</div>
							</div>

						</div>

						<div class="col-xl-4 col-lg-4 col-md-6 col-sm-4 col-xs-4 mt-1">
							<div class="row">
								<div class="col">
									<small><?php echo $reeft_text0122 ?></small>
								</div>
							</div>
							<div class="row">
								<div class="col mb-1">
									<input id="input-todate" type="date" class="form-control">
								</div>
								<div class="col">
									<input id="input-totime" type="time" class="form-control">
								</div>
							</div>
						</div>

						<div class="col-xl-4 col-lg-4 col-md-6 col-sm-4 col-xs-4 mt-1">
							<div class="row">
								<div class="col">
									<small>&nbsp;</small>
								</div>
							</div>
							<div class="row">
								<div class="col mb-1">
									<button type="button" class="btn btn-primary  mb-1" id="updateButton"><?php echo $reeft_button_get_data_icon2 ?></button>
									<button type="button" class="btn btn-primary  mb-1" onclick="getData('*RESET')"><?php echo $reeft_button_order_reset01_icon ?></button>
								</div>
							</div>
						</div>

					</div>
				</div>
				<!-- From / to date wrapper end -->

				<!-- Misc 1 search fields start -->
				<div id="misc-1-search-fields" class="d-none">

					<div class="row mb-1">
						<div class="col-xl-2 col-lg-2 col-md-3 col-sm-4 col-xs-4 mt-1">

							<div class="row">
								<div class="col">
									<small><?php echo $reeft_text0247 ?></small>
								</div>
							</div>
							<div class="row">
								<div class="col mb-1">
									<input id="input-logType" type="text" class="form-control">
								</div>
							</div>

						</div>

						<div class="col-xl-2 col-lg-2 col-md-3 col-sm-4 col-xs-4 mt-1">
							<div class="row">
								<div class="col">
									<small><?php echo $reeft_text0249 ?></small>
								</div>
							</div>
							<div class="row">
								<div class="col mb-1">
									<input id="input-logCode" type="text" class="form-control">
								</div>
							</div>
						</div>

						<div class="col-xl-2 col-lg-2 col-md-3 col-sm-4 col-xs-4 mt-1">

							<div class="row">
								<div class="col">
									<small><?php echo $reeft_text0119 ?></small>
								</div>
							</div>
							<div class="row">
								<div class="col mb-1">
									<input id="input-logPgm" type="text" class="form-control">
								</div>
							</div>

						</div>

						<div class="col-xl-2 col-lg-2 col-md-3 col-sm-4 col-xs-4 mt-1">
							<div class="row">
								<div class="col">
									<small><?php echo $reeft_text0250 ?></small>
								</div>
							</div>
							<div class="row">
								<div class="col mb-1">
									<input id="input-clientID" type="text" class="form-control">
								</div>
							</div>
						</div>



					</div>

				</div>
				<!-- Misc 1 search fields end -->

				<!-- Misc 2 search fields start -->
				<div id="misc-2-search-fields" class="d-none">

					<div class="row mb-2">

						<div class="col-xl-8 col-lg-8 col-md-12 col-sm-12 col-xs-12 mt-1">
							<div class="row">
								<div class="col">
									<small><?php echo $reeft_text0120 ?></small>
								</div>
							</div>
							<div class="row">
								<div class="col mb-1">
									<input id="input-dataLine" type="text" class="form-control">
								</div>
							</div>
						</div>



					</div>

				</div>

				<!-- Misc 1 search fields end -->

				<div class="row mt-2">
					<div class="col-12">
							<div id="data-result" style="width: 100%;"></div>
							<table id="REEFTvisual_data" class="table table-bordered table-striped table-hover">
								<thead>
									<tr class="bg-primary text-white font-weight-bold text-center">
										<th class="text-left"><?php echo $reeft_text0248 ?></th>
										<th class="text-left"><?php echo $reeft_text0143 ?> / <?php echo $reeft_text0144 ?></th>
										<th class="text-left"><?php echo $reeft_text0247 ?></th>
										<th class="text-left"><?php echo $reeft_text0249 ?></th>
										<th class="text-left"><?php echo $reeft_text0119 ?></th>
										<th class="text-left"><?php echo $reeft_text0120 ?></th>
										<th class="text-left"><?php echo $reeft_text0250 ?></th>
										<th class="text-left"><button type="button" id="add-button" title="Shortcut: Alt+F6" onclick="dataAdd('0')" class="d-none btn btn-dark btn-block font-weight-bold"><?php echo $reeft_button_save_01 ?></button></th>
										<th class="text-left"></th>
										<th class="text-left"><?php echo $reeft_text0145 ?></th>
									</tr>
								</thead>
							</table>


					</div>
				</div>

				<div class="row">
					<div class="col text-right mb-2">
						<small><div id="load-time-from-database"></div></small>
					</div>
				</div>

			</div>

		</div>


</div>


<!-- Set footer -->
<?php
	include "include/footer.php";
?>
<!-- Set footer -->

<!-- ========================================================================== -->
<!--                                M O D A L S                                 -->
<!-- ========================================================================== -->

<!-- Modal -->
<div class="modal fade" id="mainlog_maintainModal" tabindex="-1" data-backdrop="static" role="dialog" aria-labelledby="mainlog_maintainModalLabel" aria-hidden="true">
  <div class="modal-dialog modal-xxl">
    <div class="modal-content">

      <div class="modal-header bg-primary text-white">

		<div class="container-fluid pl-0 pr-0">
		<div class="row">

			<div class="col-8">
				<h5 class="modal-title" id="mainlog_maintainModalLabel"><i class="font-awesome-pseudo-class fa-thin fa-paint-roller"></i> <?php echo $reeft_text0246 ?></h5>
			</div>

			<div class="col text-right">

			</div>
			<div class="col-1 text-right" style="max-width:20px">
				<button type="button" class="close" data-dismiss="modal" aria-label="Close">
				  <span aria-hidden="true">&times;</span>
				</button>
			</div>

		</div>
		</div>


      </div>

      <div id="main-modal-body" class="modal-body ml-2 mr-2 overflow-class-modal-body">

  		<input type="text" class="d-none" id="input-current-color-picker">
		<input type="text" class="d-none" id="input-current-text-color">
		<input type="text" class="d-none" id="input-current-background-color">

			<!-- Message if screen is not wide enough -->
				<div class="container-fluid mt-2 mb-4 d-block d-lg-none">
					<div id="general-message-top" class="border border-danger rounded p-2 text-danger font-weight-boldx"><?php echo $reeft_error0040a ?></div>
				</div>
			<!-- Message if screen is not wide enough -->


			<form name="dataForm" id="dataForm">

			<!-- Hidden fields start -->

			<!-- Hidden fields end -->

			<div class="row mt-2">

				<div class="col-3">
					<?php echo $reeft_text0248 ?>
				</div>
				<div class="col-2">
					<input class="form-control read-only-class" type="text" id="modal-input-pk_key" name="modal-input-pk_key">
				</div>

			</div>

			<div class="row mt-2">
				<div class="col-3">
					<?php echo $reeft_text0149 ?>
				</div>
				<div class="col-2">
					<input class="form-control read-only-class" type="text" id="modal-input-timeStamp" name="modal-input-timeStamp">
				</div>
			</div>

			<div class="row mt-2">
				<div class="col-3">
					<?php echo $reeft_text0145 ?>
				</div>
				<div class="col-2">
					<input class="form-control read-only-class" type="text" id="modal-input-logType" name="modal-input-logType">
				</div>
			</div>

			<div class="row mt-2">
				<div class="col-3">
					<?php echo $reeft_text0249 ?>
				</div>
				<div class="col-2">
					<input class="form-control read-only-class" type="text"  id="modal-input-logCode" name="modal-input-logCode">
				</div>
			</div>

			<div class="row mt-2">
				<div class="col-3">
					<?php echo $reeft_text0250 ?>
				</div>
				<div class="col-2">
					<input class="form-control read-only-class" type="text"  id="modal-input-logPgm" name="modal-input-logPgm ">
				</div>
			</div>

			<div class="row mt-2">
				<div class="col-3">
					<?php echo $reeft_text0120 ?>
				</div>
				<div class="col-9">
					<input class="form-control read-only-class" type="text"  id="modal-input-dataLine" name="modal-input-dataLine ">
				</div>
			</div>

			</form>

      </div>

      <div class="modal-footer-pretty modal-footer">

			<div class="container-fluid">

				<div class="row">
					<div class="col-12 text-left">
						<div class="p-1 font-weight-bold text-danger border-top border-dark " id="modal-message">&nbsp;</div>
					</div>
				</div>

				<div class="row mt-1 mb-2">
					<div class="col-3 text-left">

					</div>
					<div class="col-6 text-right">
					</div>
					<div class="col-3 text-right">
						<button type="button" class="btn btn-primary btn-block" id="buttton-close-modal" data-dismiss="modal"><?php echo $reeft_button_cancel_01 ?></button>
					</div>
				</div>

			</div>


      </div>
    </div>
  </div>
</div>

<!-- ************************************************ -->
<!--                 Confirm delete                   -->
<!-- ************************************************ -->
<div class="modal fade" id="mainLog_confirmDeleteModal" tabindex="-1" role="dialog" aria-labelledby="mainLog_confirmDeleteModalLabel" aria-hidden="true">
  <div class="modal-dialog modal-xl" role="document">
    <div class="modal-content">
      <div class="modal-header bg-primary text-white">
        <h5 class="modal-title" id="mainLog_confirmDeleteModalLabel"><?php echo $reeft_text0063 ?></h5>
        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body">

		<form name="dataForm-delete" id="dataForm-delete">

			<input type="text" class="d-none" id="confirm-delete-timeStamp" name="confirm-delete-timeStamp">

		</form>

		<div class="h6"><?php echo $reeft_text0062 ?>: <span class="font-weight-bold" id="confirm-delete-text-timeStamp"></span></div>

      </div>
      <div class="modal-footer">

			<div class="container-fluid">

				<div class="row mt-1 mb-2">
					<div class="col-3 text-left">
						<button type="button" onclick="dataDeleteExec()" class="btn btn-primary"><?php echo $reeft_button_delete ?></button>
					</div>
					<div class="col-6 text-right">
					</div>
					<div class="col-3 text-right">
						<button type="button" class="btn btn-primary" data-dismiss="modal"><?php echo $reeft_button_cancel_01 ?></button>
					</div>
				</div>


			</div>
      </div>
    </div>
  </div>
</div>


</body>
</html>